请求资源不存在的处理
- [ ] try-catch处理资源不存在时出现服务崩溃问题123456789101112131415161718192021222324var http = require("http"),url = require("url"),fs = require("fs");var server1 = http.createServer(function(request, response) {var urlobj = url.parse(request.url, true),pathname = urlobj["pathname"];//-->避免客户请求资源不存在而服务崩溃终止(处理facicon.ico请求不到而导致的问题)try {//->按照指定目录读取文件中内容代码(字符串格式的)var redfs = fs.readFileSync("." + pathname, "utf-8");//->服务端返回到客户端的也是字符串response.end(redfs);} catch (e) {response.end("request file is not find");}});//error:listen eacces 0.0.0.0:80-->表示80端口被占用server1.listen(80, function() {console.log("server is success,listening on 80 port!");});
静态资源请求的处理
(处理类似默认请求favicon.ico不存在)
MIME类型
每一种资源文件都会有自己的MIME类型,浏览器会根据不同类型进行解析渲染
- TXT —> text/plain
- HTML —> text/html
- CSS —> text/css
- JS —> text/javascript
- JSON —> application/json
- JPG —> image/jpeg
- PNG —> image/png
- …
[ ] 一条一条处理静态资源请求(html/css/js……)告诉客户端这是什么类型的文件)
123456789101112131415if(pathname==="/index.html"){var redfs = fs.readFileSync("./index.html", "utf-8");response.end(redfs);return;}if(pathname==="/index.css"){redfs = fs.readFileSync("./index.css", "utf-8");response.end(redfs);return;}if(pathname==="/index.js"){redfs = fs.readFileSync("./index.js", "utf-8");response.end(redfs);return;}[ ] 处理静态资源文件请求(html/css/js……)告诉客户端这是什么类型的文件—>
前端路由
|
|
- MIME